Type alias `activations` to consolidate definition
authorAlex Crichton <alex@alexcrichton.com>
Sat, 3 Jun 2017 18:03:12 +0000 (11:03 -0700)
committerAlex Crichton <alex@alexcrichton.com>
Mon, 5 Jun 2017 14:36:44 +0000 (07:36 -0700)
Avoids duplicating tons of maps!

src/cargo/core/resolver/mod.rs

index 6ea55115c55c4d267b60e44d865334dd6934905e..00b3cdcda7a7ef8a03c7d0ac7708608079091d94 100644 (file)
@@ -297,13 +297,15 @@ enum GraphNode {
 
 #[derive(Clone)]
 struct Context<'a> {
-    activations: HashMap<String, HashMap<SourceId, Vec<Summary>>>,
+    activations: Activations,
     resolve_graph: RcList<GraphNode>,
     resolve_features: HashMap<PackageId, HashSet<String>>,
     resolve_replacements: RcList<(PackageId, PackageId)>,
     replacements: &'a [(PackageIdSpec, Dependency)],
 }
 
+type Activations = HashMap<String, HashMap<SourceId, Vec<Summary>>>;
+
 /// Builds the list of all packages required to build the first argument.
 pub fn resolve(summaries: &[(Summary, Method)],
                replacements: &[(PackageIdSpec, Dependency)],
@@ -1115,8 +1117,7 @@ impl<'a> Context<'a> {
     }
 }
 
-fn check_cycles(resolve: &Resolve,
-                activations: &HashMap<String, HashMap<SourceId, Vec<Summary>>>)
+fn check_cycles(resolve: &Resolve, activations: &Activations)
                 -> CargoResult<()> {
     let summaries: HashMap<&PackageId, &Summary> = activations.values()
         .flat_map(|v| v.values())